import 'package:base_flutter/base_flutter.dart';
/// status : 0
/// patrolName : "日常巡防任务"
/// patrolRange : null
/// startTime : "2022-11-13 09:30:00"
/// endTime : "2022-11-13 20:30:00"
/// taskId : 16
/// statusName : "未巡查"
/// require : null
/// resultStatusName : ""
/// executeTaskId : 485
/// pointId : 22
/// pointName : "服务中心"
/// executeDate : null
/// executeBy : null
/// executeByName : null
/// resultStatus : 0
/// feedback : null
/// branchId : null
/// id : 1881
/// createdBy : ""
/// createdDate : "2022-11-12 22:00:00"
/// updatedBy : ""
/// updatedDate : "2022-11-12 22:00:00"

class PatrolDetailData implements IPickerData{
  PatrolDetailData({
      this.status, 
      this.patrolName, 
      this.patrolRange, 
      this.startTime, 
      this.endTime, 
      this.taskId, 
      this.statusName, 
      this.require, 
      this.resultStatusName, 
      this.executeTaskId, 
      this.pointId, 
      this.pointName, 
      this.executeDate, 
      this.executeBy, 
      this.executeByName, 
      this.resultStatus, 
      this.feedback, 
      this.branchId, 
      this.id, 
      this.createdBy, 
      this.createdDate, 
      this.updatedBy, 
      this.updatedDate,});

  PatrolDetailData.fromJson(dynamic json) {
    status = json['status'];
    patrolName = json['patrolName'];
    patrolRange = json['patrolRange'];
    startTime = json['startTime'];
    endTime = json['endTime'];
    taskId = json['taskId'];
    statusName = json['statusName'];
    require = json['require'];
    resultStatusName = json['resultStatusName'];
    executeTaskId = json['executeTaskId'];
    pointId = json['pointId'];
    pointName = json['pointName'];
    executeDate = json['executeDate'];
    executeBy = json['executeBy'];
    executeByName = json['executeByName'];
    resultStatus = json['resultStatus'];
    feedback = json['feedback'];
    branchId = json['branchId'];
    id = json['id'];
    createdBy = json['createdBy'];
    createdDate = json['createdDate'];
    updatedBy = json['updatedBy'];
    updatedDate = json['updatedDate'];
  }
  int? status;
  String? patrolName;
  dynamic patrolRange;
  String? startTime;
  String? endTime;
  int? taskId;
  String? statusName;
  dynamic require;
  String? resultStatusName;
  int? executeTaskId;
  int? pointId;
  String? pointName;
  dynamic executeDate;
  dynamic executeBy;
  dynamic executeByName;
  int? resultStatus;
  dynamic feedback;
  dynamic branchId;
  int? id;
  String? createdBy;
  String? createdDate;
  String? updatedBy;
  String? updatedDate;
PatrolDetailData copyWith({  int? status,
  String? patrolName,
  dynamic patrolRange,
  String? startTime,
  String? endTime,
  int? taskId,
  String? statusName,
  dynamic require,
  String? resultStatusName,
  int? executeTaskId,
  int? pointId,
  String? pointName,
  dynamic executeDate,
  dynamic executeBy,
  dynamic executeByName,
  int? resultStatus,
  dynamic feedback,
  dynamic branchId,
  int? id,
  String? createdBy,
  String? createdDate,
  String? updatedBy,
  String? updatedDate,
}) => PatrolDetailData(  status: status ?? this.status,
  patrolName: patrolName ?? this.patrolName,
  patrolRange: patrolRange ?? this.patrolRange,
  startTime: startTime ?? this.startTime,
  endTime: endTime ?? this.endTime,
  taskId: taskId ?? this.taskId,
  statusName: statusName ?? this.statusName,
  require: require ?? this.require,
  resultStatusName: resultStatusName ?? this.resultStatusName,
  executeTaskId: executeTaskId ?? this.executeTaskId,
  pointId: pointId ?? this.pointId,
  pointName: pointName ?? this.pointName,
  executeDate: executeDate ?? this.executeDate,
  executeBy: executeBy ?? this.executeBy,
  executeByName: executeByName ?? this.executeByName,
  resultStatus: resultStatus ?? this.resultStatus,
  feedback: feedback ?? this.feedback,
  branchId: branchId ?? this.branchId,
  id: id ?? this.id,
  createdBy: createdBy ?? this.createdBy,
  createdDate: createdDate ?? this.createdDate,
  updatedBy: updatedBy ?? this.updatedBy,
  updatedDate: updatedDate ?? this.updatedDate,
);
  Map<String, dynamic> toJson() {
    final map = <String, dynamic>{};
    map['status'] = status;
    map['patrolName'] = patrolName;
    map['patrolRange'] = patrolRange;
    map['startTime'] = startTime;
    map['endTime'] = endTime;
    map['taskId'] = taskId;
    map['statusName'] = statusName;
    map['require'] = require;
    map['resultStatusName'] = resultStatusName;
    map['executeTaskId'] = executeTaskId;
    map['pointId'] = pointId;
    map['pointName'] = pointName;
    map['executeDate'] = executeDate;
    map['executeBy'] = executeBy;
    map['executeByName'] = executeByName;
    map['resultStatus'] = resultStatus;
    map['feedback'] = feedback;
    map['branchId'] = branchId;
    map['id'] = id;
    map['createdBy'] = createdBy;
    map['createdDate'] = createdDate;
    map['updatedBy'] = updatedBy;
    map['updatedDate'] = updatedDate;
    return map;
  }

  @override
  String get name => patrolName??"";

  @override
  set name(String _name) {
  }



}